package com.lebang.mapper;

import com.lebang.entity.sys.Role;
import com.lebang.entity.sys.LbbRole;
import com.lebang.example.LbbRoleExample;
import com.lebang.model.vo.SearchVo;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;
import java.util.Map;
@Repository
public interface LbbRoleMapper {
    long countByExample(LbbRoleExample example);

    int deleteByExample(LbbRoleExample example);

    int deleteByPrimaryKey(Long id);

    int insert(LbbRole record);

    int insertSelective(LbbRole record);

    List<LbbRole> selectByExample(LbbRoleExample example);

    LbbRole selectByPrimaryKey(Long id);

    int updateByExampleSelective(@Param("record") LbbRole record, @Param("example") LbbRoleExample example);

    int updateByExample(@Param("record") LbbRole record, @Param("example") LbbRoleExample example);

    int updateByPrimaryKeySelective(LbbRole record);

    int updateByPrimaryKey(LbbRole record);

    LbbRole getByRoleId(String roleId);

    /**
     * 分组角色
     * @author weizx
     * @date 2018年7月12日 下午12:15:14
     * @param groupid
     * @return
     */
    List<Role> list(@Param("groupid") String groupid);

    /**
     * 统计
     * @author weizx
     * @date 2018年7月12日 下午2:55:49
     * @param search
     * @return
     */
    int total(@Param("search") String search);

    /**
     * 分页
     * @author weizx
     * @date 2018年7月12日 下午3:03:21
     * @param vo
     * @return
     */
    List<Map<String, Object>> pagging(@Param("vo") SearchVo vo);
}